package org.edu.modules.exam.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import org.edu.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;

@TableName("ve_exam_record")
@ApiModel(value="ve_exam_record对象", description="ve_exam_record")
public class VeExamRecord
        implements Serializable
{
    private static final long serialVersionUID = 1L;
    @TableId(type=IdType.ASSIGN_ID)
    @ApiModelProperty("id")
    private String id;
    @Excel(name="用户id", width=15.0D)
    @ApiModelProperty("用户id")
    private String userid;
    @Excel(name="考生姓名", width=15.0D)
    @ApiModelProperty("考生姓名")
    private String username;
    @Excel(name="考试ID", width=15.0D)
    @ApiModelProperty("考试ID")
    private String examid;
    private transient String examTxt;
    @Excel(name="考试得分", width=15.0D)
    @ApiModelProperty("考试得分")
    private Integer score;
    @Excel(name="客观题得分", width=15.0D)
    @ApiModelProperty("客观题得分")
    private Integer objectivescore;
    @Excel(name="成绩级别", width=15.0D)
    @ApiModelProperty("成绩级别")
    private String grade;
    @Excel(name="考试时间", width=15.0D)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @ApiModelProperty("考试时间")
    private Integer addtime;
    @Excel(name="提交时间", width=15.0D)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @ApiModelProperty("提交时间")
    private Integer submittime;
    @Excel(name="是否提交，1未提交2手动提交3自动提交", width=15.0D)
    @ApiModelProperty("是否提交，1未提交2手动提交3自动提交")
    private Integer issubmit;
    @Excel(name="节点id", width=15.0D)
    @ApiModelProperty("节点id")
    private Integer nodeid;
    @Excel(name="第几次考试", width=15.0D)
    @ApiModelProperty("第几次考试")
    private Integer examtimes;
    @Excel(name="试卷号", width=15.0D)
    @ApiModelProperty("试卷号")
    private String paperid;
    @Excel(name="是否最终成绩（0否，1是）", width=15.0D)
    @ApiModelProperty("是否最终成绩（0否，1是）")
    @Dict(dicCode="yn")
    private Integer isfinalscore;
    @Excel(name="是否批阅0否1是", width=15.0D)
    @ApiModelProperty("是否批阅0否1是")
    @Dict(dicCode="yn")
    private Integer ismark;
    @Excel(name="考试用时（单位分钟）", width=15.0D)
    @ApiModelProperty("考试用时（单位分钟）")
    private Integer usetime;
    @Excel(name="终端", width=15.0D)
    @ApiModelProperty("终端")
    private Integer terminalid;
    @Excel(name="多租户id", width=15.0D)
    @ApiModelProperty("多租户id")
    private Integer placeId;

    public VeExamRecord setUsername(String username)
    {
        this.username = username;return this;
    }

    public VeExamRecord setUserid(String userid)
    {
        this.userid = userid;return this;
    }

    public VeExamRecord setId(String id)
    {
        this.id = id;return this;
    }

    public String toString()
    {
        return "VeExamRecord(id=" + getId() + ", userid=" + getUserid() + ", username=" + getUsername() + ", examid=" + getExamid() + ", examTxt=" + getExamTxt() + ", score=" + getScore() + ", objectivescore=" + getObjectivescore() + ", grade=" + getGrade() + ", addtime=" + getAddtime() + ", submittime=" + getSubmittime() + ", issubmit=" + getIssubmit() + ", nodeid=" + getNodeid() + ", examtimes=" + getExamtimes() + ", paperid=" + getPaperid() + ", isfinalscore=" + getIsfinalscore() + ", ismark=" + getIsmark() + ", usetime=" + getUsetime() + ", terminalid=" + getTerminalid() + ", placeId=" + getPlaceId() + ")";
    }

    public VeExamRecord setPlaceId(Integer placeId)
    {
        this.placeId = placeId;return this;
    }

    public VeExamRecord setTerminalid(Integer terminalid)
    {
        this.terminalid = terminalid;return this;
    }

    public VeExamRecord setUsetime(Integer usetime)
    {
        this.usetime = usetime;return this;
    }

    public VeExamRecord setIsmark(Integer ismark)
    {
        this.ismark = ismark;return this;
    }

    public VeExamRecord setIsfinalscore(Integer isfinalscore)
    {
        this.isfinalscore = isfinalscore;return this;
    }

    public VeExamRecord setPaperid(String paperid)
    {
        this.paperid = paperid;return this;
    }

    public VeExamRecord setExamtimes(Integer examtimes)
    {
        this.examtimes = examtimes;return this;
    }

    public VeExamRecord setNodeid(Integer nodeid)
    {
        this.nodeid = nodeid;return this;
    }

    public VeExamRecord setIssubmit(Integer issubmit)
    {
        this.issubmit = issubmit;return this;
    }

    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    public VeExamRecord setSubmittime(Integer submittime)
    {
        this.submittime = submittime;return this;
    }

    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    public VeExamRecord setAddtime(Integer addtime)
    {
        this.addtime = addtime;return this;
    }

    public VeExamRecord setGrade(String grade)
    {
        this.grade = grade;return this;
    }

    public VeExamRecord setObjectivescore(Integer objectivescore)
    {
        this.objectivescore = objectivescore;return this;
    }

    public VeExamRecord setScore(Integer score)
    {
        this.score = score;return this;
    }

    public VeExamRecord setExamTxt(String examTxt)
    {
        this.examTxt = examTxt;return this;
    }

    public VeExamRecord setExamid(String examid)
    {
        this.examid = examid;return this;
    }

    public int hashCode()
    {
        int PRIME = 59;int result = 1;Object $score = getScore();result = result * 59 + ($score == null ? 43 : $score.hashCode());Object $objectivescore = getObjectivescore();result = result * 59 + ($objectivescore == null ? 43 : $objectivescore.hashCode());Object $addtime = getAddtime();result = result * 59 + ($addtime == null ? 43 : $addtime.hashCode());Object $submittime = getSubmittime();result = result * 59 + ($submittime == null ? 43 : $submittime.hashCode());Object $issubmit = getIssubmit();result = result * 59 + ($issubmit == null ? 43 : $issubmit.hashCode());Object $nodeid = getNodeid();result = result * 59 + ($nodeid == null ? 43 : $nodeid.hashCode());Object $examtimes = getExamtimes();result = result * 59 + ($examtimes == null ? 43 : $examtimes.hashCode());Object $isfinalscore = getIsfinalscore();result = result * 59 + ($isfinalscore == null ? 43 : $isfinalscore.hashCode());Object $ismark = getIsmark();result = result * 59 + ($ismark == null ? 43 : $ismark.hashCode());Object $usetime = getUsetime();result = result * 59 + ($usetime == null ? 43 : $usetime.hashCode());Object $terminalid = getTerminalid();result = result * 59 + ($terminalid == null ? 43 : $terminalid.hashCode());Object $placeId = getPlaceId();result = result * 59 + ($placeId == null ? 43 : $placeId.hashCode());Object $id = getId();result = result * 59 + ($id == null ? 43 : $id.hashCode());Object $userid = getUserid();result = result * 59 + ($userid == null ? 43 : $userid.hashCode());Object $username = getUsername();result = result * 59 + ($username == null ? 43 : $username.hashCode());Object $examid = getExamid();result = result * 59 + ($examid == null ? 43 : $examid.hashCode());Object $grade = getGrade();result = result * 59 + ($grade == null ? 43 : $grade.hashCode());Object $paperid = getPaperid();result = result * 59 + ($paperid == null ? 43 : $paperid.hashCode());return result;
    }

    protected boolean canEqual(Object other)
    {
        return other instanceof VeExamRecord;
    }

    public boolean equals(Object o)
    {
        if (o == this) {
            return true;
        }
        if (!(o instanceof VeExamRecord)) {
            return false;
        }
        VeExamRecord other = (VeExamRecord)o;
        if (!other.canEqual(this)) {
            return false;
        }
        Object this$score = getScore();Object other$score = other.getScore();
        if (this$score == null ? other$score != null : !this$score.equals(other$score)) {
            return false;
        }
        Object this$objectivescore = getObjectivescore();Object other$objectivescore = other.getObjectivescore();
        if (this$objectivescore == null ? other$objectivescore != null : !this$objectivescore.equals(other$objectivescore)) {
            return false;
        }
        Object this$addtime = getAddtime();Object other$addtime = other.getAddtime();
        if (this$addtime == null ? other$addtime != null : !this$addtime.equals(other$addtime)) {
            return false;
        }
        Object this$submittime = getSubmittime();Object other$submittime = other.getSubmittime();
        if (this$submittime == null ? other$submittime != null : !this$submittime.equals(other$submittime)) {
            return false;
        }
        Object this$issubmit = getIssubmit();Object other$issubmit = other.getIssubmit();
        if (this$issubmit == null ? other$issubmit != null : !this$issubmit.equals(other$issubmit)) {
            return false;
        }
        Object this$nodeid = getNodeid();Object other$nodeid = other.getNodeid();
        if (this$nodeid == null ? other$nodeid != null : !this$nodeid.equals(other$nodeid)) {
            return false;
        }
        Object this$examtimes = getExamtimes();Object other$examtimes = other.getExamtimes();
        if (this$examtimes == null ? other$examtimes != null : !this$examtimes.equals(other$examtimes)) {
            return false;
        }
        Object this$isfinalscore = getIsfinalscore();Object other$isfinalscore = other.getIsfinalscore();
        if (this$isfinalscore == null ? other$isfinalscore != null : !this$isfinalscore.equals(other$isfinalscore)) {
            return false;
        }
        Object this$ismark = getIsmark();Object other$ismark = other.getIsmark();
        if (this$ismark == null ? other$ismark != null : !this$ismark.equals(other$ismark)) {
            return false;
        }
        Object this$usetime = getUsetime();Object other$usetime = other.getUsetime();
        if (this$usetime == null ? other$usetime != null : !this$usetime.equals(other$usetime)) {
            return false;
        }
        Object this$terminalid = getTerminalid();Object other$terminalid = other.getTerminalid();
        if (this$terminalid == null ? other$terminalid != null : !this$terminalid.equals(other$terminalid)) {
            return false;
        }
        Object this$placeId = getPlaceId();Object other$placeId = other.getPlaceId();
        if (this$placeId == null ? other$placeId != null : !this$placeId.equals(other$placeId)) {
            return false;
        }
        Object this$id = getId();Object other$id = other.getId();
        if (this$id == null ? other$id != null : !this$id.equals(other$id)) {
            return false;
        }
        Object this$userid = getUserid();Object other$userid = other.getUserid();
        if (this$userid == null ? other$userid != null : !this$userid.equals(other$userid)) {
            return false;
        }
        Object this$username = getUsername();Object other$username = other.getUsername();
        if (this$username == null ? other$username != null : !this$username.equals(other$username)) {
            return false;
        }
        Object this$examid = getExamid();Object other$examid = other.getExamid();
        if (this$examid == null ? other$examid != null : !this$examid.equals(other$examid)) {
            return false;
        }
        Object this$grade = getGrade();Object other$grade = other.getGrade();
        if (this$grade == null ? other$grade != null : !this$grade.equals(other$grade)) {
            return false;
        }
        Object this$paperid = getPaperid();Object other$paperid = other.getPaperid();return this$paperid == null ? other$paperid == null : this$paperid.equals(other$paperid);
    }

    public String getId()
    {
        return this.id;
    }

    public String getUserid()
    {
        return this.userid;
    }

    public String getUsername()
    {
        return this.username;
    }

    public String getExamid()
    {
        return this.examid;
    }

    public String getExamTxt()
    {
        return this.examTxt;
    }

    public Integer getScore()
    {
        return this.score;
    }

    public Integer getObjectivescore()
    {
        return this.objectivescore;
    }

    public String getGrade()
    {
        return this.grade;
    }

    public Integer getAddtime()
    {
        return this.addtime;
    }

    public Integer getSubmittime()
    {
        return this.submittime;
    }

    public Integer getIssubmit()
    {
        return this.issubmit;
    }

    public Integer getNodeid()
    {
        return this.nodeid;
    }

    public Integer getExamtimes()
    {
        return this.examtimes;
    }

    public String getPaperid()
    {
        return this.paperid;
    }

    public Integer getIsfinalscore()
    {
        return this.isfinalscore;
    }

    public Integer getIsmark()
    {
        return this.ismark;
    }

    public Integer getUsetime()
    {
        return this.usetime;
    }

    public Integer getTerminalid()
    {
        return this.terminalid;
    }

    public Integer getPlaceId()
    {
        return this.placeId;
    }
}
